Matthias Clasen [Thu, 1 Dec 2011 20:25:24 +0000 (15:25 -0500)]
Bloatpad: Add mnemonics to the menu
Colin Walters [Thu, 1 Dec 2011 18:29:41 +0000 (13:29 -0500)]
GtkApplicationWindow: Don't unref a NULL object
Ryan Lortie [Thu, 1 Dec 2011 17:18:22 +0000 (12:18 -0500)]
Adapt to changes in GLib API
g_application_get_menu() -> get_app_menu().
Matthias Clasen [Thu, 1 Dec 2011 17:17:53 +0000 (12:17 -0500)]
Drop GtkApplicationMenuButton for now
This feels premature; we do have the fallback situation covered
adaequately with the menubar, and people can do their own creative
solutions with gtk_application_window_get_menu(), so we don't have
to offer a widget for this right now.
Matthias Clasen [Thu, 1 Dec 2011 13:51:22 +0000 (08:51 -0500)]
Remove a redundant test
Matthias Clasen [Thu, 1 Dec 2011 13:33:08 +0000 (08:33 -0500)]
GtkApplicationMenuButton: add docs
Matthias Clasen [Thu, 1 Dec 2011 11:30:10 +0000 (06:30 -0500)]
Undoccommentify action muxer files
Matthias Clasen [Thu, 1 Dec 2011 05:21:11 +0000 (00:21 -0500)]
Whitespace fixes
Matthias Clasen [Thu, 1 Dec 2011 05:09:45 +0000 (00:09 -0500)]
Hook up docs
Matthias Clasen [Thu, 1 Dec 2011 05:02:08 +0000 (00:02 -0500)]
Remove no-longer existing function
Matthias Clasen [Thu, 1 Dec 2011 04:59:32 +0000 (23:59 -0500)]
GtkApplicationWindow: more docs
Matthias Clasen [Thu, 1 Dec 2011 04:55:05 +0000 (23:55 -0500)]
Include gtkapplicationmenubutton.h in gtk.h
Matthias Clasen [Thu, 1 Dec 2011 04:53:39 +0000 (23:53 -0500)]
GtkApplicationWindow: mark a string for translation
Matthias Clasen [Thu, 1 Dec 2011 04:49:23 +0000 (23:49 -0500)]
Some coding style fixes
Matthias Clasen [Thu, 1 Dec 2011 04:48:59 +0000 (23:48 -0500)]
GtkApplication: doc improvement
Matthias Clasen [Thu, 1 Dec 2011 00:14:48 +0000 (19:14 -0500)]
Some initial docs
Matthias Clasen [Wed, 30 Nov 2011 21:50:17 +0000 (16:50 -0500)]
Drop an unused variable
Matthias Clasen [Wed, 30 Nov 2011 21:33:32 +0000 (16:33 -0500)]
Don't call g_object_unref on a variant
Tsk, tsk...
Colin Walters [Wed, 30 Nov 2011 20:55:31 +0000 (15:55 -0500)]
GtkApplicationWindow: Use dispose for GObjects
This ensures we break cyclic references.
Colin Walters [Wed, 30 Nov 2011 20:41:43 +0000 (15:41 -0500)]
gtkapplicationwindow: Pick up gtk-shell-shows-app-menu XSetting
Calling gtk_application_window_set_show_app_menu() is now an override
for that setting. If you don't call it, we pick up the default.
Colin Walters [Wed, 30 Nov 2011 20:41:02 +0000 (15:41 -0500)]
gdk: Fix prototype for gdk_x11_window_set_utf8_property
Ryan Lortie [Wed, 30 Nov 2011 20:25:12 +0000 (15:25 -0500)]
bloatpad: use GtkApplicationMenuButton
Ryan Lortie [Wed, 30 Nov 2011 20:24:22 +0000 (15:24 -0500)]
add GtkApplicationMenuButton
Ryan Lortie [Wed, 30 Nov 2011 18:39:38 +0000 (13:39 -0500)]
bloatpad: add 'win.fullscreen' action
Ryan Lortie [Wed, 30 Nov 2011 17:07:25 +0000 (12:07 -0500)]
bloatpad: make "about" a window action
By making "about" a per-window action, we can pop the about dialog up on
top of the correct window instead of trying to guess from the
application list of windows.
Ryan Lortie [Wed, 30 Nov 2011 17:06:40 +0000 (12:06 -0500)]
GtkApplicationWindow: wire up action activations
Wire the 'activate_action' and 'change_action_state' vfuncs through to
the GSimpleActionGroup.
Ryan Lortie [Wed, 30 Nov 2011 16:58:38 +0000 (11:58 -0500)]
gtk.symbols fixes
Ryan Lortie [Wed, 30 Nov 2011 16:51:41 +0000 (11:51 -0500)]
GtkApplicationWindow: implement GActionMap
Ryan Lortie [Wed, 30 Nov 2011 14:41:00 +0000 (09:41 -0500)]
port bloatpad to the new APIs
Ryan Lortie [Wed, 30 Nov 2011 14:34:29 +0000 (09:34 -0500)]
add GtkApplicationWindow
This is a GtkWindow subclass that "application windows" will use. Each
is associated with a GtkApplication, has the ability to show menus and
will have its own associated set of actions.
Ryan Lortie [Wed, 30 Nov 2011 14:33:03 +0000 (09:33 -0500)]
add GActionMuxer and observer interfaces
These were destined for GLib, but they don't really make sense as a
public API. Instead, we'll copy/paste them around between the various
codebases that need to render menus.
Ryan Lortie [Wed, 30 Nov 2011 03:28:11 +0000 (22:28 -0500)]
GtkSettings: add shell-shows-app-menu property
This is a boolean property that will be set to TRUE if the current
desktop environment is capable of displaying the application menu as
part of the desktop shell.
If it is FALSE then the application will need to display the menu for
itself.
Matthias Clasen [Tue, 29 Nov 2011 22:44:11 +0000 (17:44 -0500)]
Make it build against the current wip/menus-rebase3 branch
Colin Walters [Tue, 29 Nov 2011 20:59:20 +0000 (15:59 -0500)]
testgmenu: #ifdef out non-compiling code for now
Matthias Clasen [Tue, 29 Nov 2011 04:40:18 +0000 (23:40 -0500)]
Add a very bad fallback check
...maybe committing this inspires some better solution.
Colin Walters [Fri, 25 Nov 2011 22:22:16 +0000 (17:22 -0500)]
window: Set a _DBUS_APPLICATION_ID X11 window property
This will allow gnome-shell to reference it.
Colin Walters [Fri, 25 Nov 2011 22:21:05 +0000 (17:21 -0500)]
x11: Add gdk_x11_window_set_utf8_property
A convenience function to manipulate UTF-8 X11 properties; no point
in wrapping each one in individual setters.
Matthias Clasen [Sun, 27 Nov 2011 04:44:37 +0000 (23:44 -0500)]
GtkApplication: Insert separators after sections
The previous code was only inserting a separator when a new
section was starting right away, which may not always be the
case.
Matthias Clasen [Sun, 27 Nov 2011 04:42:33 +0000 (23:42 -0500)]
testgmenu: Insert separators after sections
The previous code was only inserting a separator when a new
section was starting right away.
Matthias Clasen [Sat, 26 Nov 2011 18:32:48 +0000 (13:32 -0500)]
GtkApplication: Initial attempt at section headings
This should be redone to show the label together with the
separator line, somehow. For now, just put the label below
the separator, as a separate item.
Matthias Clasen [Sat, 26 Nov 2011 18:27:18 +0000 (13:27 -0500)]
testgmenu: Initial attempt at section headings
This should be redone to show the label together with the
separator line, somehow. For now, just put the label below
the separator, as a separate item.
Matthias Clasen [Sat, 26 Nov 2011 18:06:04 +0000 (13:06 -0500)]
GtkApplication: use activate for actions here, too
Matthias Clasen [Sat, 26 Nov 2011 17:39:05 +0000 (12:39 -0500)]
testgmenu: Use activate with parameter for radio actions
This is how stateful actions are supposed to be activated, using
change_state for this was not right at all.
Matthias Clasen [Sat, 26 Nov 2011 16:56:42 +0000 (11:56 -0500)]
testgmenu: Use activate for toggle actions
This is how stateful actions are supposed to be activated, using
change_state for this was not right at all.
Colin Walters [Mon, 21 Nov 2011 14:58:37 +0000 (09:58 -0500)]
testgmenu: Quit on delete-event
Matthias Clasen [Sat, 19 Nov 2011 05:02:09 +0000 (00:02 -0500)]
Adapt to api changes in GMenuModel
Matthias Clasen [Fri, 18 Nov 2011 02:58:20 +0000 (21:58 -0500)]
Adapt to object path conventions
Seems common to expect 'path == bus name with slashes'.
Matthias Clasen [Wed, 9 Nov 2011 04:36:32 +0000 (23:36 -0500)]
bloatpad: Add an example app menu
The bloatpad example shows simple GtkApplication usage,
so it makes sense to test app menu api here as well.
Matthias Clasen [Wed, 9 Nov 2011 04:35:06 +0000 (23:35 -0500)]
GtkApplication: add a way to get the appmenu
This function either returns a GtkMenu or NULL.
Still to do: detect if the app menu is externally handled.
Matthias Clasen [Wed, 9 Nov 2011 00:04:33 +0000 (19:04 -0500)]
Drop an unused variable
Matthias Clasen [Wed, 9 Nov 2011 00:03:40 +0000 (19:03 -0500)]
Remove an unneeded include
Matthias Clasen [Tue, 8 Nov 2011 21:28:22 +0000 (16:28 -0500)]
testgmenu: Demonstrate how translatable labels work
Matthias Clasen [Tue, 8 Nov 2011 21:24:32 +0000 (16:24 -0500)]
Pass domain to the menu parser
This is necessary to make translations in markup work.
Matthias Clasen [Sun, 6 Nov 2011 06:17:15 +0000 (01:17 -0500)]
More dynamic changes
Matthias Clasen [Sun, 6 Nov 2011 05:14:33 +0000 (01:14 -0400)]
Cleanups
Separate the menu generation code and all callbacks in a
MenuHolder struct.
Matthias Clasen [Tue, 1 Nov 2011 23:53:51 +0000 (19:53 -0400)]
Quick-and-dirty GtkBuilder integration
This makes GtkBuilder accept a GMenuMarkup tree at the toplevel
(ie with <menu id='foo'> being a child of <interface>) and the resulting
GMenu object can be obtained via gtk_builder_get_object (builder, "foo").
Matthias Clasen [Tue, 1 Nov 2011 12:49:04 +0000 (08:49 -0400)]
Brute-force dynamic change propagation
We need to make sure that we connect to ::items-changed on every
single model, as they appear and disappear. Ugly business.
Matthias Clasen [Tue, 1 Nov 2011 05:27:49 +0000 (01:27 -0400)]
First attempt at handling dynamic changes
We need to connect to items-changed on _every_ menu
model, which is somewhat icky. For some reason, this
works fine with a local model, but not with D-Bus in
between. Debugging needed.
Matthias Clasen [Tue, 1 Nov 2011 04:30:31 +0000 (00:30 -0400)]
Add code for dynamic changes
Add and remove items and actions - we don't update
the menus properly yet.
Matthias Clasen [Mon, 31 Oct 2011 12:28:05 +0000 (08:28 -0400)]
Add some todos
Matthias Clasen [Sun, 30 Oct 2011 16:35:12 +0000 (12:35 -0400)]
Some GMenu test code
This is some test code for constructing GtkMenus from GMenus.
Daniel Mustieles [Mon, 19 Dec 2011 16:14:35 +0000 (17:14 +0100)]
Updated Spanish translation
Benjamin Otte [Mon, 19 Dec 2011 15:15:52 +0000 (16:15 +0100)]
a11y: emit entry signals immediately
We want to emit signals when stuff happens, not sometime later. That way
we can also catch the correct text that was deleted.
https://bugzilla.gnome.org/show_bug.cgi?id=659445
Benjamin Otte [Mon, 19 Dec 2011 11:39:53 +0000 (12:39 +0100)]
x11: Avoid spurious focus events on grabs
We want to avoid handling focus events for the private focus window,
otherwise the keyboard grab taken by for example buttons will cause a
spurious FOCUS_OUT/FOCUS_IN on the toplevel.
The code that did this seems to have been lost in the XI2 transition for
GTK3.
https://bugzilla.gnome.org/show_bug.cgi?id=657578
Benjamin Otte [Mon, 19 Dec 2011 10:19:35 +0000 (11:19 +0100)]
x11: Unify focus handling code
This code was essentially copy-pasted in two locations, so unify them in
the same place.
https://bugzilla.gnome.org/show_bug.cgi?id=657578
Benjamin Otte [Sun, 18 Dec 2011 20:07:27 +0000 (21:07 +0100)]
a11y: implement widget_(un)set in ContainerCell
Benjamin Otte [Mon, 19 Dec 2011 05:10:16 +0000 (06:10 +0100)]
a11y: Make GtkCellAccessible a GtkAccessible
Benjamin Otte [Sun, 18 Dec 2011 19:25:23 +0000 (20:25 +0100)]
tests: Avoid deprecation warning
Benjamin Otte [Sun, 18 Dec 2011 19:24:46 +0000 (20:24 +0100)]
accessible: Deprecate gtk_accessible_connect_widget_destroyed()
That was an abomination. Also, if people called it twice, you got even
mor signal handlers!
Benjamin Otte [Sun, 18 Dec 2011 19:21:50 +0000 (20:21 +0100)]
widget: Set widget in accessible's constructor
No need to add t manually later.
Benjamin Otte [Sun, 18 Dec 2011 19:19:32 +0000 (20:19 +0100)]
a11y: Don't connect_destroyed anymore
It's not used now that set_widget() does the right thing.
Benjamin Otte [Sun, 18 Dec 2011 19:18:04 +0000 (20:18 +0100)]
iconview: Simplify adjustment monitoring for accessible
Benjamin Otte [Sun, 18 Dec 2011 18:21:07 +0000 (19:21 +0100)]
a11y: Remove widget_destroyed call
GtkAccessible does all of that for us now.
Benjamin Otte [Sun, 18 Dec 2011 18:20:15 +0000 (19:20 +0100)]
a11y: Use widget_unset vfunc in treeview
Benjamin Otte [Sun, 18 Dec 2011 16:29:31 +0000 (17:29 +0100)]
accessible: Ensure we unset the widget when finalizing
Benjamin Otte [Sun, 18 Dec 2011 16:18:49 +0000 (17:18 +0100)]
widget: Unref accessible
Benjamin Otte [Sun, 18 Dec 2011 16:14:47 +0000 (17:14 +0100)]
a11y: Fix crash in notebook
When the accessible was disposed before the notebook it referenced, the
weak ref could still trigger. This works around it.
Benjamin Otte [Sun, 18 Dec 2011 16:05:20 +0000 (17:05 +0100)]
widget: Unset self from accessible
Benjamin Otte [Sun, 18 Dec 2011 15:55:14 +0000 (16:55 +0100)]
widget: Unset widget on accessibles
Benjamin Otte [Sun, 18 Dec 2011 15:41:06 +0000 (16:41 +0100)]
accesible: Manage the DEFUNCT state
A GtkAccessible with a NULL widget is defunct, there's no way around it.
Benjamin Otte [Sun, 18 Dec 2011 15:16:34 +0000 (16:16 +0100)]
iconview: Split out iconview accessible
Benjamin Otte [Sun, 18 Dec 2011 12:07:07 +0000 (13:07 +0100)]
accessible: Use set_widget() in destroy notify
We don't want to bypass the unset_widget call.
Benjamin Otte [Sun, 18 Dec 2011 11:55:41 +0000 (12:55 +0100)]
API: accessible: Add widget_set and widget_unset vfuncs
I expect them to be used a lot, so this approach seems better than
requiring signals that connect to "notify::widget". Also, we can't use
regular functions (like dispose or constructed), becaiuse those assume
that (un)setting of the widget only happens once and with the current
design (a puble set_widget() function) we can't really guarantee that.
Also, I split them into two separate functions as one function is part
of construction and the other part of destruction of the object. And it
doesn't sound like a good idea to have that both be part of one
function.
Benjamin Otte [Sun, 18 Dec 2011 11:49:06 +0000 (12:49 +0100)]
accessible: At an important note to the docs
I wanted to use weak refs to ensure this instead, but it's a performance
problem when used in the treeview and each and every cell adds a weak
ref to the treeview.
Benjamin Otte [Sun, 18 Dec 2011 06:30:23 +0000 (07:30 +0100)]
accessible: Check the widgeyt actually changed when setting
Benjamin Otte [Sun, 18 Dec 2011 05:55:44 +0000 (06:55 +0100)]
accessible: Make widget a property
Benjamin Otte [Sat, 17 Dec 2011 19:45:07 +0000 (20:45 +0100)]
treeview: Only set focus column in setter function
Single point of entry. It's actually going to become more complicated
with a11y now.
Benjamin Otte [Fri, 16 Dec 2011 22:11:45 +0000 (23:11 +0100)]
a11y: Simplify code
Use peek_cell() instead of a custom find_cell() function that duplicates
loads of functionality.
Matthias Clasen [Mon, 19 Dec 2011 12:32:32 +0000 (07:32 -0500)]
Tell gtk-doc about G_GNUC_WARN_UNUSED_RESULT
Matthias Clasen [Mon, 19 Dec 2011 12:32:15 +0000 (07:32 -0500)]
Reduce gtk-doc warnings
Matthias Clasen [Sun, 18 Dec 2011 21:04:51 +0000 (16:04 -0500)]
Fix parameter name mismatch
Matthias Clasen [Sun, 18 Dec 2011 19:28:01 +0000 (14:28 -0500)]
Use the workarea when placing popups
This uses the new workarea API to avoid placing popups underneath
panels, docks, etc.
Matthias Clasen [Sun, 18 Dec 2011 19:02:55 +0000 (14:02 -0500)]
Add gdk_screen_get_monitor_workarea
The function returns the part of a monitors area that should be
used for positioning popups, menus, etc. The only non-trivial
implementation atm is in the X backend, all the other backends
just return the full monitor area. The X implementation is
currently suboptimal, since it requires roundtrips to collect
the necessary information. It should be changed to monitor
the properties for changes, when XFixes allows to monitor
individual properties.
https://bugzilla.gnome.org/show_bug.cgi?id=641999
Daniel Mustieles [Sun, 18 Dec 2011 19:11:34 +0000 (20:11 +0100)]
Updated Spanish translation
Carlos Garnacho [Sun, 18 Dec 2011 17:56:51 +0000 (18:56 +0100)]
gdk,xi2: Make more resilient about not yet known devices
Dealing with disabled devices may turn into hierarchy/device
changed events on device IDs with no backing GdkDevice yet,
so protect against that. The device attachment will be handled
correctly when the device is enabled later.
Ignacio Casal Quinteiro [Sun, 18 Dec 2011 17:45:49 +0000 (18:45 +0100)]
textlayout: cleanup
Use g_clear_object, move unrefs to dispose and reorganize code
Paolo Borelli [Sun, 18 Dec 2011 16:44:23 +0000 (17:44 +0100)]
Use gtk_text_layout_get_iter_at_line
We already have a gtk_text_layout_get_iter_at_line wrapper that takes
care of getting the btree from the layout, we may as well use it.
Paolo Borelli [Sun, 18 Dec 2011 16:35:08 +0000 (17:35 +0100)]
Remove useless get_iter_at_line calls.
No need to call _gtk_text_btree_get_iter_at_line right before calling
totally_invisible_line, since it is the first thing it does itself.
Baurzhan Muftakhidinov [Sat, 17 Dec 2011 20:11:15 +0000 (21:11 +0100)]
[l10n] Updated Kazakh translation
Piotr Drąg [Sat, 17 Dec 2011 18:50:27 +0000 (19:50 +0100)]
Updated POTFILES.in